# 文件操作
# 打开一个文件，语法open("路径"，打开模式)
# f=open("ncd_test.txt","w",encoding="UTF-8")
# f.write("今天天气不错")
# f.close()
# with 语句，不管在处理文件过程中是否发生异常，
# 都能保证 with 语句执行完毕后已经关闭打开的文件句柄。
# with open("ncd_test.txt","r",encoding="UTF-8") as f:
#     print(f.read())
#     pass
#文件写入
# file1=open("Test.txt","wb")
# file1.write("床前明月光\n".encode("UTF-8"))
# file1.write("疑是地上霜\n".encode("UTF-8"))
# # file1.writelines(["疑是地上霜\n","举头望明月\n","低头思故乡\n"])
# file1.close()
# #文件写入  a:在文件末尾追加
# file1=open("Test.txt","a",encoding="UTF-8")
# file1.write("床前明月光\n")
# file1.write("疑是地上霜\n")
# # file1.writelines(["疑是地上霜\n","举头望明月\n","低头思故乡\n"])
# file1.close()
# 文件的读取
# file2=open("Test.txt","r",encoding="UTF-8")
# context=file2.read(2)
# print(context)
# file2.close()
# file2=open("Test.txt","rb")
# context=file2.read(9) # ?
# # 以二进制方式读取文件，需要对文件进行解码
# print(context.decode("UTF-8"))
# file2.close()
file3=open("Test.txt","r",encoding="UTF-8")
# readlines整行读取，读取全部内容，以列表方法返回
# print(file3.readlines())
# readline读取一行
print(file3.readline())
print(file3.readline())
print(file3.readline())
print(file3.readline())
file3.close()

# 打开模式
# 小结
# 文件读写的几种操作方式
# read  r r+  rb  rb+
# r r+ 只读  使用普通读取场景
# rb  rb+  适用于 文件 图片 视频 音频 这样文件读取
# write w  w+ wb+  wb a  ab
# w wb+ w+  每次都会去创建文件
# 二进制读写的时候 要注意编码问题  默认情况下 我们写入文件的编码是gbk
# a  ab a+  在原有的文件的基础之后去【文件指针的末尾】去追加，
# 并不会每次的都去创建一个新的文件
# 题目：文件备份，将一个以存在的文件，进行备份。备份后的文件要和原文件的内容完全一致。
